import api from './index'
import { axios } from '@/utils/request'

// roleUrl: '/ums-api/ums/role/'

/**
 * 路由
 * // ums
    {
        path: '/ums',
        name: 'ums',
        component: PageView,
        redirect: '/ums/role',
        meta: { title: '后台用户角色表', icon: 'table', permission: [ 'ums' ] },
        children: [
            {
                path: '/ums/role',
                name: 'Role',
                component: () => import('@/views/ums/RoleList'),
                meta: { title: '后台用户角色表', keepAlive: true, permission: [ 'role' ] }
            }
        ]
    },
 */

/**
 * 查询列表
 * @returns {*}
 */
export function getRoleList (parameter) {
    return axios({
        url: api.roleUrl,
        method: 'get',
        data: parameter
    })
}

/**
 * 查询详情
 * @param id
 * @returns {*}
 */
export function getRole (id) {
    return axios({
        url: api.roleUrl + id,
        method: 'get'
    })
}

/**
 * 更新
 * @param id
 * @param parameter
 * @returns {*}
 */
export function updateRole (id, parameter) {
    return axios({
        url: api.roleUrl + id,
        method: 'put',
        data: parameter
    })
}

/**
 * 新增
 * @param parameter
 * @returns {*}
 */
export function addRole (parameter) {
    return axios({
        url: api.roleUrl,
        method: 'post',
        data: parameter
    })
}

/**
 * 删除
 * @param id
 * @returns {*}
 */
export function deleteRole (id) {
    return axios({
        url: api.roleUrl + id,
        method: 'delete'
    })
}

/**
 * 批量删除
 * @param id
 * @returns {*}
 */
export function batchDeleteRole (parameter) {
    return axios({
        url: api.roleUrl + 'delete/batch',
        method: 'post',
        data: parameter
    })
}

/**
 * 更新角色权限
 */
export function updateRolePermission (parameter) {
    return axios({
        url: api.updateRolePermissionUrl,
        method: 'post',
        data: parameter
    })
}

/**
 * 更新角色权限
 */
export function getRolePermissions (parameter) {
    return axios({
        url: api.getRolePermissionsUrl,
        method: 'get',
        data: parameter
    })
}
